//
//  LLBaseViewController.h
//  LLAccountSDK
//
//  Created by xuyf on 14-2-14.
//  Copyright (c) 2014年 LianLian. All rights reserved.
//

#import <UIKit/UIKit.h>
#import "Constants.h"
#import "LLSmallUtil.h"
#import "LLRestEngine.h"
#import "LLYTTextField.h"
#import "LLAlertView.h"
#import "LLColorButton.h"
#import "PxNetSession.h"
#import "PxBaseOilNetCmd.h"
#import "PxTabbar.h"
#import "NSString+Additions.h"
#import "PxWidgetCreater.h"
#import "Masonry.h"

//@protocol LLNavActionDelegate <NSObject>
//
//- (BOOL)backAction;
//
//@end

@interface PxBaseViewController : UIViewController

@property (nonatomic, strong) id incomingParam;
@property (nonatomic, strong) id exitParam;
@property (nonatomic,retain) PxTabBar *tabBar;
@property (nonatomic, retain) UIScrollView *contentView;

- (UIView*)setLogoTitleViewWithTitle:(NSString*)title;
- (void)setLeftBack;

+ (instancetype)viewControllerWithIncomingParam:(id)param;

- (void)pushViewController:(NSString*)vcClassName withIncomingParam:(id)param;
- (void)replaceViewController:(NSString*)vcClassName withIncomingParam:(id)param;
- (void)replaceViewController:(id)param;
- (void)popToViewController:(NSString *)vClassName;
- (void)popToViewController:(NSString *)vcClassName withIncomingParam:(id)param;
- (void)popToLastControllerWithIncomingParam:(id)param;

- (void)gotoLogin;
- (void)pushNeedLoginViewController:(NSString*)vcClassName withIncomingParam:(id)param;
- (void)pushRootViewController:(NSString*)vcClassName withIncomingParam:(id)param;

- (void)back;
- (void)topViewControllerExit:(id)controllerExitParam;

-(void) setTabbar;

-(void)removeAllSubViews;
-(BOOL)isEmpty:(NSArray *)fields;
- (void)showMSG:(NSString *)msg withType:(int)type;

@end
